<?php
/**
* 建行交易 动态参数
*/
abstract class Abccbconf
{
    /**
     * 转出账户号 varChar(32) 转出账户号为授权账户，转入账户号为签约账户时，为主动收款功能
     */
    protected $payAccNo  = '33001617935053007954';

    /**
     * 币种 Char(2) 01 人民币
     */
    protected $curType = '01';

    /**
     * 代发代扣编号 varChar(20) 
     */
    // protected $billCode = '33061_002569';
    protected $billCodeCcb = '33000_002333'; // 建行发建行
    protected $billCode = 'M2N61_010918'; // 跨行

    /**
     * 代发代扣项目名称 varChar(100) 
     */
    //protected $billDesc = '33061_002569';
    protected $billDescCcb = '新全国代发'; // 建行发建行
    protected $billDesc = '跨行代发7954';
    /**
     * 用途编号 varChar(12)
     */
    protected $useofCode = '99999998';

    protected $_ccbConf;

    protected $parameter;

    function __construct(CcbConf $ccbConf, $parameter)
    {
        $this->_ccbConf = $ccbConf;
        $this->parameter = $parameter;
    }

    /**
     * 获取整个交易的参数
     */
    abstract protected function getTransaction();

    /**
     * 获取整个交易的的内容
     */
    abstract protected function getTransactionBody();

    /**
     * 验证传过来的参数
     */
    abstract protected function validateParameter();
}